\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4}{
\section{nih\-:\-:\-Vector$<$ \-T, 3 $>$ \-Struct \-Template \-Reference}
\label{structnih_1_1_vector_3_01_t_00_013_01_4}\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}}
}


{\ttfamily \#include $<$vector.\-h$>$}

\subsection*{\-Public \-Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_a3c013dfbd877252c7c7d2b0f7645d2ae}{
typedef \-T {\bfseries value\-\_\-type}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_a3c013dfbd877252c7c7d2b0f7645d2ae}

\item 
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_a51363c71ac4e9ed4c6936926cc681b77}{
typedef \-T {\bfseries \-Field\-\_\-type}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_a51363c71ac4e9ed4c6936926cc681b77}

\end{DoxyCompactItemize}
\subsection*{\-Public \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_013_01_4_a46f3c02e790ef9ede9362a4800abecf8}{\-Vector} ()
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_013_01_4_a1fa5583b1b796dba60cf0c9fa7ca472d}{\-Vector} (const \-T v)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_013_01_4_ad44c24f5b05234e9cde8c07c0c070ca6}{\-Vector} (const \-T $\ast$v)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_013_01_4_a95ed63724e926d12ea0c47e5be1c5a72}{\-Vector} (const \-T v0, const \-T v1, const \-T v2)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector_3_01_t_00_013_01_4_abb5a3d675c027f8f795883475f7c8c0b}{\-Vector} (const \hyperlink{structnih_1_1_vector}{\-Vector}$<$ \-T, 2 $>$ \&v, const \-T v2)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \*
\-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \hyperlink{structnih_1_1_vector}{\-Vector} \& \hyperlink{structnih_1_1_vector_3_01_t_00_013_01_4_a3bec2a9796b619173e3776b23a2f08b7}{operator=} (const \hyperlink{structnih_1_1_vector}{\-Vector} \&v)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \*
\-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E const \-T \& \hyperlink{structnih_1_1_vector_3_01_t_00_013_01_4_af2d4000a3a863988f6e583eb30107d3f}{operator\mbox{[}$\,$\mbox{]}} (const size\-\_\-t i) const 
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \*
\-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \-T \& \hyperlink{structnih_1_1_vector_3_01_t_00_013_01_4_a64ad5a39c5b1c9971b8dd7270f7a5710}{operator\mbox{[}$\,$\mbox{]}} (const size\-\_\-t i)
\item 
\-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E size\-\_\-t \hyperlink{structnih_1_1_vector_3_01_t_00_013_01_4_ac80e01ef9cbb7ff22bd61c8a84e20137}{dimension} () const 
\end{DoxyCompactItemize}
\subsection*{\-Public \-Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_ad5d83caaf0ebda0b9605e85fdd8fd8a9}{
\-T {\bfseries x} \mbox{[}3\mbox{]}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_ad5d83caaf0ebda0b9605e85fdd8fd8a9}

\end{DoxyCompactItemize}
\subsection*{\-Static \-Public \-Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_a70896fe0323a750c0aabe49c2fbe3532}{
static const size\-\_\-t {\bfseries k\-Dimension} = 3u}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_a70896fe0323a750c0aabe49c2fbe3532}

\end{DoxyCompactItemize}


\subsection{\-Detailed \-Description}
\subsubsection*{template$<$typename T$>$struct nih\-::\-Vector$<$ T, 3 $>$}

\-Abstract linear algebra vector class, templated over type and specialized to dimension 3 

\subsection{\-Constructor \& \-Destructor \-Documentation}
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_a46f3c02e790ef9ede9362a4800abecf8}{
\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 3 >@{nih\-::\-Vector$<$ T, 3 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 3 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_a46f3c02e790ef9ede9362a4800abecf8}
empty constructor \hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_a1fa5583b1b796dba60cf0c9fa7ca472d}{
\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 3 >@{nih\-::\-Vector$<$ T, 3 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 3 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
\item[{const \-T}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, explicit\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_a1fa5583b1b796dba60cf0c9fa7ca472d}
copy constructor


\begin{DoxyParams}{\-Parameters}
{\em v} & input vector \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_ad44c24f5b05234e9cde8c07c0c070ca6}{
\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 3 >@{nih\-::\-Vector$<$ T, 3 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 3 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
\item[{const \-T $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, explicit\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_ad44c24f5b05234e9cde8c07c0c070ca6}
copy constructor


\begin{DoxyParams}{\-Parameters}
{\em v} & input array \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_a95ed63724e926d12ea0c47e5be1c5a72}{
\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 3 >@{nih\-::\-Vector$<$ T, 3 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 3 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
\item[{const \-T}]{v0, }
\item[{const \-T}]{v1, }
\item[{const \-T}]{v2}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_a95ed63724e926d12ea0c47e5be1c5a72}
component-\/wise constructor


\begin{DoxyParams}{\-Parameters}
{\em v0} & component 0 \\
\hline
{\em v1} & component 1 \\
\hline
{\em v2} & component 2 \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_abb5a3d675c027f8f795883475f7c8c0b}{
\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}!\-Vector@{\-Vector}}
\index{\-Vector@{\-Vector}!nih::Vector< T, 3 >@{nih\-::\-Vector$<$ T, 3 $>$}}
\subsubsection[{\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf nih\-::\-Vector}$<$ \-T, 3 $>$\-::{\bf \-Vector} (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector}$<$ \-T, 2 $>$ \&}]{v, }
\item[{const \-T}]{v2}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_abb5a3d675c027f8f795883475f7c8c0b}
constructor


\begin{DoxyParams}{\-Parameters}
{\em v} & input 2d vector \\
\hline
{\em v3} & third component \\
\hline
\end{DoxyParams}


\subsection{\-Member \-Function \-Documentation}
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_ac80e01ef9cbb7ff22bd61c8a84e20137}{
\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}!dimension@{dimension}}
\index{dimension@{dimension}!nih::Vector< T, 3 >@{nih\-::\-Vector$<$ T, 3 $>$}}
\subsubsection[{dimension}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E size\-\_\-t {\bf nih\-::\-Vector}$<$ \-T, 3 $>$\-::dimension (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_ac80e01ef9cbb7ff22bd61c8a84e20137}
vector dimension \hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_a3bec2a9796b619173e3776b23a2f08b7}{
\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}!operator=@{operator=}}
\index{operator=@{operator=}!nih::Vector< T, 3 >@{nih\-::\-Vector$<$ T, 3 $>$}}
\subsubsection[{operator=}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E {\bf \-Vector}\& {\bf nih\-::\-Vector}$<$ \-T, 3 $>$\-::operator= (
\begin{DoxyParamCaption}
\item[{const {\bf \-Vector}$<$ \-T, 3 $>$ \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_a3bec2a9796b619173e3776b23a2f08b7}
assignment operator


\begin{DoxyParams}{\-Parameters}
{\em v} & input vector \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_af2d4000a3a863988f6e583eb30107d3f}{
\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}!operator\mbox{[}$\,$\mbox{]}@{operator[]}}
\index{operator\mbox{[}$\,$\mbox{]}@{operator[]}!nih::Vector< T, 3 >@{nih\-::\-Vector$<$ T, 3 $>$}}
\subsubsection[{operator[]}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E const \-T\& {\bf nih\-::\-Vector}$<$ \-T, 3 $>$\-::operator\mbox{[}$\,$\mbox{]} (
\begin{DoxyParamCaption}
\item[{const size\-\_\-t}]{i}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_af2d4000a3a863988f6e583eb30107d3f}
const indexing operator


\begin{DoxyParams}{\-Parameters}
{\em i} & component index \\
\hline
\end{DoxyParams}
\hypertarget{structnih_1_1_vector_3_01_t_00_013_01_4_a64ad5a39c5b1c9971b8dd7270f7a5710}{
\index{nih\-::\-Vector$<$ T, 3 $>$@{nih\-::\-Vector$<$ T, 3 $>$}!operator\mbox{[}$\,$\mbox{]}@{operator[]}}
\index{operator\mbox{[}$\,$\mbox{]}@{operator[]}!nih::Vector< T, 3 >@{nih\-::\-Vector$<$ T, 3 $>$}}
\subsubsection[{operator[]}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ \-N\-I\-H\-\_\-\-H\-O\-S\-T \-N\-I\-H\-\_\-\-D\-E\-V\-I\-C\-E \-F\-O\-R\-C\-E\-\_\-\-I\-N\-L\-I\-N\-E \-T\& {\bf nih\-::\-Vector}$<$ \-T, 3 $>$\-::operator\mbox{[}$\,$\mbox{]} (
\begin{DoxyParamCaption}
\item[{const size\-\_\-t}]{i}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{structnih_1_1_vector_3_01_t_00_013_01_4_a64ad5a39c5b1c9971b8dd7270f7a5710}
indexing operator


\begin{DoxyParams}{\-Parameters}
{\em i} & component index \\
\hline
\end{DoxyParams}


\-The documentation for this struct was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
linalg/\hyperlink{vector_8h}{vector.\-h}\end{DoxyCompactItemize}
